1. Field of the Invention
The present invention relates to a packet process, in particular, to a packet processing method, a packet processing apparatus, and a packet exchange that handle layer 2, layer 3, and so forth corresponding to the ISO reference model.
2. Description of the Related Art
In a communication network regardless of a wired system or a wireless system, various communication modes can be selected. With various communication modes, various services such as telephone, data communication, facsimile, and video communication are provided. In recent years, to allow the same interface to accommodate a plurality of terminals and an interface to be shared for various services, ITU (International Telecommunication Union) and ISO (International Organization for Standardization) that are international organizations have initiatively standardized a communication network and recommended OSI (Open System Interconnection) reference model.
In the OSI reference model, a plurality of protocols used in one communication session is categorized as seven layers that are defined as follows. Layer 1 is a physical layer in which electrical and mechanical conditions and procedures are managed for setting, maintaining, and canceling physical lines and a transmission of a bit sequence is assured. Layer 2 is a data link layer in which a data link is set between nodes connected with a communication line and a bit error on a transmission path is corrected. Layer 3 is a network layer in which a routing operation is performed through a communication network so as to connect the local system to a remote system.
Layer 4 is a transport layer in which an end-to-end transport connection is set and a transparent data transmission is performed so as to provide a server to a higher layer regardless of the quality of the communication network. Layer 5 is a session layer in which application processes are connected with sessions and communication modes such as full duplex mode and half duplex mode and synchronization mode and re-synchronization mode necessary for communications among processes are managed.
Layer 6 is a presentation layer in which a data format controlling operation for managing the structure of data received and transmitted between processes is performed. Layer 7 is an application layer that is the highest layer in which a user/application protocol corresponding to an object is executed. So far, various protocols have been structured corresponding each layer of the OSI reference model. Communications between exchanges, between an exchange and a terminal, and between computers are accomplished corresponding to the seven layers.
For example, a communication between computers is referred to as inter-system communication. A communication between processes of a computer is referred to as process communication. Layer 1 to layer 3 are protocols for inter-system communication. In reality, layer 1 is a layer in which data and each medium such as sound and picture are converted into electric signals and then transmitted. Layer 2 is a data link layer in which data transmissions among a terminal, an exchange, a node, and so forth are securely executed with high reliability. Layer 3 is a network layer in which mediums are transmitted and relayed between terminals, exchanges, nodes, and so forth through a plurality of networks.
For example, digital exchanges are categorized as a line exchange type and a packet exchange type, In addition, digital exchanges are further categorized as a subscriber line exchange and a relay exchange. The subscriber line exchange performs a relaying operation and an exchanging operation for a subscriber line connected to a subscriber terminal. The relay exchange performs a relaying operation and an exchanging operation for the subscriber line exchange through a transmission path. Layer 4 to layer 7, that are high function layers, are not necessary for a relaying operation and an exchanging operation. Thus, any exchange has a transfer layer structure corresponding to layers 1, 2, and 3. When an exchange is controlled corresponding to a computer program as a stored program control system, the computer searches a free line, updates transmission data at a proper timing with a high speed memory (such as semiconductor LSI memory), reads the data from the memory, and transmits the data to a relevant line.
Next, a packet exchanged between a layer 2 processing portion and a layer 3 processing portion of a packet exchange will be described. Conventionally, a packet is exchanged between the layer 2 processing portion 2 and the layer 3 processing portion corresponding to one of the following two methods.
(A) A packet memory of the layer 2 processing portion is accessed as a read/write operation for a packet stored therein by the layer 3 processing portion through a memory bus.
(B) A packet memory disposed on a control bus and written by the layer 2 processing portion having a DMA (Direct Memory Access) circuit is accessed for a packet stored therein as a read/write operation by the layer 3 processing portion through the memory bus.
The transfer layer function of the packet exchange is disclosed in Japanese Patent Laid-Open Publication No. 7-1431333. According to the related art reference, in a conventional layer structure system, when protocols of three layers of layer 1 (ATM), layer 2, and layer 3 are processed, a shared memory that stores user data that is input and output between a layer 1 protocol processing device and a line and data such as header information used for a protocol process of each layer is disposed so as to reduce the storage capacity of the memories of the system and alleviate the process capability of the system.
Each layer protocol processing device can access the shared memory. When a frame is transferred between layer 1 and layer 2 or a packet is transferred between layer 2 and layer 3, data stored in the shared memory is not directly transmitted. Instead, data is indirectly transferred with the top and last address values of the data stored in the shared memory. In other words, each transfer layer can access the shared memory through a bus. When necessary, since data can be read from the shared memory through the bus, the storage capacity of the shared memory can be remarkably reduced and thereby the process performance can be improved.
However, in each of the above-described methods (A) and (B), since the same memory bus is accessed from the layer 2 processing portion and the layer 3 processing portion, their processes cause to interfere with each other. Even if a bus contention arbitration controlling portion is disposed, the process performance deteriorates. In particular, when layer 2 is an ATM, since a complicated cell disassembling/assembling process and so forth are performed, a process delay due to memory access contention to layer 3 is more critical.
In the method (B), instead of the bus contention arbitration controlling portion, a packet memory that has a large storage capacity for a frame and a packet transferred in the layer 2 process is required. Thus, when a dual-port memory that is expensive is used, the cost of the product rises.
In layer 3, in most cases, only packet header information is processed. Thus, particularly, in the packet transferring process, it is preferred to store user data to a memory of the layer 2 processing portion and supply only header information to the layer 3 processing portion. At this point, when the layer 3 processing portion is connected to the same bus of the layer 2 processing portion, since their memory accessing processes contend and interfere, the process capability deteriorates.